home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1996 June / EnigmA AMIGA RUN 08 (1996)(G.R. Edizioni)(IT)[!][issue 1996-06][EARSAN CD VII].iso / earcd / gcc / ixemlsrc.lha / ixemul / Product-Info < prev    next >
Fred Fish's Product-Info  |  1996-03-13  |  3KB  |  73 lines

  1. .name
  2. ixemul
  3. .fullname
  4. Unix Emulation Library
  5. .type
  6. Library
  7. .short
  8. Shared lib providing UNIX like environ.
  9. .description
  10. (by Markus Wild)
  11.  
  12. I always wanted a library, that would emulate as much as possible of a
  13. **IX/BSD environment on the Amiga, so that programs (usually programming
  14. tools) written for **IX/BSD could be ported in a quick and straight forward
  15. way to the Amiga.  I guess the library accomplishes this goal fairly well.
  16.  
  17. What it is and what it isn't
  18. ============================
  19.  
  20. The design of the library was therefore guided towards **IX/BSD
  21. compatibility, and *not* :
  22.  o to be too conservative with resources 
  23.  o to be particularly conformant to Amiga habits. Thus if I had to decide
  24.    whether I should make a function act more like an Amiga function or
  25.    more like a **IX/BSD one, I decided for the latter. As an example:
  26.    _cli_parse() does wildcard expansion, and tries to apply more or less
  27.    **IX/BSD shell semantics to an argument line, it doesn't call
  28.    ReadArgs().
  29.    The types used in my own source code are all from sys/types.h (except
  30.    BPTR). I don't think capitalized identifiers should be used for typedef'd
  31.    types. According to C-conventions, anything written in captials should
  32.    be `#undef'inable, which typedefs aren't. Thus if you write contributions
  33.    to be included into the official distribution of this library, code
  34.    according to this. Use `u_char' and not UBYTE, etc. I don't care that
  35.    this is against the Commodore coding standard, this is my code, and
  36.    I decide what I like and what not.
  37.  o to be particularly suited for inclusion into a shared library, although
  38.    most things *are* shared now. What I'd really want for the Amiga is 
  39.    the concept of a dynamic linker.
  40.  
  41. On the other hand, it should be:
  42.  o expandable. As an example, a file descriptor already can refer to `real'
  43.    files, directories, memory buffers treated as files. I plan to add 
  44.    sockets in some next release (Commodore: please get out some examples 
  45.    on how to use SANA-II stuff, so my sockets can be compatible!)
  46.  o patchable. If you want some function to behave differently, you can
  47.    SetFunction() it, and the rest of the library should use your new entry.
  48.    NOTE: I used this only for major functions, that may reasonably change. 
  49.      I didn't call functions like strcmp(), strlen(), bcopy() that way for
  50.          efficiency reasons (and my lazyness to change the whole string/
  51.          and other libraries;-)))
  52.    This version doesn't particularly follow this goal very well, mostly
  53.    stdio is still the original BSD code, and doesn't use syscall()...
  54.  
  55. Also included is ixtrace, a utility which lets you scan every call made
  56. through the library base when you install one of the *.trace versions of
  57. the library.
  58. .version
  59. 43.0
  60. .author
  61. Markus M. Wild
  62. .distribution
  63. GNU Public License
  64. .source
  65. Includes source.
  66. .docs
  67. docs/README
  68. docs/README2
  69. .described-by
  70. Fred Fish (fnf@amigalib.com)
  71. .submittal
  72. Submitted electronically by Hans Verkuil, the current ixemul maintainer.
  73.